#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <string.h>

int main()
{
  char buffer[64];
  read(0, buffer, sizeof(buffer));
  printf("%s\n", buffer);
  return 0;
}

//int main()
//{
//  const char* msg = "hello wrold\n";
//  write(2, msg, strlen(msg));
//  write(2, msg, strlen(msg));
//  write(2, msg, strlen(msg));
//  write(2, msg, strlen(msg));
//  write(2, msg, strlen(msg));
//  return 0;
//
//}

//int main()
//{
//  int fd1 = open("./log.txt", O_CREAT|O_WRONLY, 0664);
//  int fd2 = open("./log.txt", O_CREAT|O_WRONLY, 0664);
//  int fd3 = open("./log.txt", O_CREAT|O_WRONLY, 0664);
//  int fd4 = open("./log.txt", O_CREAT|O_WRONLY, 0664);
//
//  printf("fd1:%d\n", fd1);
//  printf("fd2:%d\n", fd2);
//  printf("fd3:%d\n", fd3);
//  printf("fd4:%d\n", fd4);
//
//  close(fd1);
//  close(fd2);
//  close(fd3);
//  close(fd4);
//  return 0;
//}

//int main()
//{
//  int fd = open("./log.txt", O_RDONLY);
//  if(fd < 0)
//  {
//    printf("open error");
//    return 1;
//  }
//
//  char buffer[1024];
//  ssize_t s = read(fd, buffer, sizeof(buffer) - 1);//不需要\0
//  if(s > 0)
//  {
//    buffer[s] = '\0';//手动设置'\0'
//    printf("%s\n", buffer);
//  }
//  close(fd);
//  return 0;
//}

//int main()
//{
//  int fd = open("./log.txt", O_WRONLY | O_CREAT, 0664);
//  if(fd < 0)
//  {
//    printf("open error!\n");
//  }
//
//  const char* msg = "hello world1\n";
//  write(fd, msg, strlen(msg));
//  close(fd);
//  return 0;
//}

//int main()
//{
//  const char* msg = "hello world\n";
//  fputs(msg, stderr);
//  return 0;
//}

//int main()
//{
//  FILE* fp = fopen("./log.txt", "w");
//  if(NULL == fp)
//  {
//    perror("fopen");
//    return 1;
//  }
//
//  const char* msg = "hello world";
//  fputs(msg, fp);
//  fclose(fp);
//  return 0;
//}

//int main()
//{
////FILE* fp = fopen("./log.txt", "r"); 
//if(NULL == fp)
//  {
//    perror("fopen");
//    return 1;
//  }
//  char arr[64];
//  fgets(arr, sizeof(arr), fp);
//  printf("%s\n", arr);
//  fclose(fp);
//  return 0;
//}













